package com.softer.wxzj.entity;

import lombok.Data;

import java.math.BigDecimal;
import java.time.LocalDate;
import java.util.List;

@Data
public class ExpProjectReq {
    private String regDate;
    private String name;
    private String orgName;
    private String id;
    /**
     * 维修项目编号
     */
    private String reqNo;
    /**
     * 维修项目名称
     */
    private String reqName;
    private BigDecimal assiAmount;
    private BigDecimal actualAmount;
    /**
     * 项目描述
     */
    private String maintainContent;
    /**
     * 分摊范围类型 208 小区 209 楼幢   210 单元 211自定义
     */
    private String marginType;
    /**
     * 预算金额
     */
    private BigDecimal budgSum;
    private BigDecimal buildNo;
    private String buildId;
    private String regionNo;
    /**
     * 收款单位
     */
    private String orgPayee;
    /**
     * 收款帐号
     */
    private String accPayee;

    private String step;
    private String stepNum;
    /**
     * 状态(0未竣工，1已竣工)
     */
    private String state;
    /**
     * 总户数
     */
    private int allUser;
    /**
     * 投票户数
     */
    private Integer voter;
    /**
     * 总面积
     */
    private BigDecimal allArea;
    /**
     * 通过户数
     */
    private Integer passUsr;
    /**
     * 通过面积
     */
    private BigDecimal passArea;
    /**
     * 预分摊单价
     */
    private BigDecimal price;
    /**
     * 小区ID
     */
    private String regionId;
    /**
     * 申请日期
     */
    private String reqDate;
    /**
     * 受理日期
     */
    private String commitDate;
    /**
     * 业主审核日期
     */
    private String ownerDate;
    /**
     * 项目审核日期
     */
    private String proDate;
    /**
     * 计算决算金额
     */
    private BigDecimal finalSum;
    /**
     * 质保金金额
     */
    private BigDecimal lastSum;
    /**
     * 审价单位
     */
    private String orgVerification;
    /**
     * 决算日期
     */
    private String finalDate;
    /**
     * 预算可支配金额
     */
    private BigDecimal governable;
    /**
     * 决算可支配金额
     */
    private BigDecimal finishGovernable;
    /**
     * 尾款支付日期
     */
    private String lastDate;
    /**
     * 备注
     */
    private String remark;
    /**
     * 决算单价
     */
    private BigDecimal finalPrice;
    /**
     * 是否应急
     */
    private Integer isUrgent;
    /**
     * 审价费
     */
    private BigDecimal aduitFee;
    /**
     * 质保到期日期
     */
    private String warrantyExpirationDate;
    /**
     * 监理费
     */
    private BigDecimal superviseFee;
    /**
     * 施工单位
     */
    private String orgConstruction;
    /**
     * 施工单位名称
     */
    private String orgConstructionName;
    /**
     * 监理单位
     */
    private String orgSupervision;
    /**
     * 申请单位
     */
    private String orgReq;
    /**
     * 申请单位名称
     */
    private String orgReqName;
    /**
     * 单位列表
     */
    private List<BaseOrganization> orgList;
    /**
     * 业委会
     */
    private String orgOwner;
    /**
     * 输入决算金额
     */
    private BigDecimal inputFinalSum;
    /**
     * 质保金比例
     */
    private BigDecimal lastRate;
    /**
     * 是否质保金 0否 1 是
     */
    private Integer isLast;
    /**
     * 支付次数
     */
    private int payCount;
    /**
     * 审核状态（0保存，1审核中，2审核通过，3审核失败，4退回）
     */
    private String flowState;
    private String createTime;

    private String creater;

    private String updateTime;

    private String modifier;
    /**
     * 分摊方式
     */
    private String divideType;
    /**
     * 自交金额
     */
    private BigDecimal selfAmount;
    /**
     * 自交户数
     */
    private Integer selfSum;
    /**
     * 维修项目类型
     */
    private String maintainType;

    private String payName;
    private String payRate;
    /**
     * 维修类别名称
     */
    private String maintainTypeName;
    /**
     * 维修对象
     */
    private String maintainObject;
    /**
     * 维修对象name
     */
    private String maintainObjectName;
    /**
     * 维修对象list
     */
    private List<MaintenanceEquipment> maintenanceEquipmentList;
    /**
     * 项目名称
     */
    private String projectName;
    /**
     * 已申请金额
     */
    private BigDecimal appliedAmount;
    /**
     * 已支付金额
     */
    private BigDecimal amountPaid;
    /**
     * 开工日期
     */
    private String startDate;
    /**
     * 竣工日期
     */
    private String completionDate;
    /**
     * 审计单位
     */
    private String auditUnit;
    /**
     * 审计费用
     */
    private String auditFee;
    /**
     * 监理人
     */
    private String supervisor;
    /**
     * 监理电话
     */
    private String supervisoryPhone;
    /**
     * 小区名称
     */
    private String regionName;

    private int num;
    /**
     * 是否验收  1是，0否
     */
    private String finish;
    /**
     * 审批意见
     */
    private String auditOption;

    private String fuzzy;
    /**
     * 项目申报人
     */
    private String proreportUser;
    /**
     * 项目申报日期
     */
    private String proreportDate;
    /**
     * 预算拨款总比例
     */
    private String budgSumPayProportion;
    /**
     * 预算拨款总金额
     */
    private String budgSumPayBal;
    /**
     * 备案日期开始
     * 拨款管理用 Cdg
     */
    private String startTime;
    /**
     * 备案日期截至
     * 拨款管理用 Cdg
     */
    private String endTime;
    /**
     * 管理区域
     */
    private String zoneCode;
    /**
     * 决算自交总金额
     */
    private BigDecimal finishSelfAmount;
    /**
     * 决算自交总户数
     */
    private int finishSelfNum;
    /**
     * 系统支付金额
     */
    private BigDecimal sysAmount;
    /**
     * 计算预算金额
     */
    private BigDecimal calculateBudgSum;
    /**
     * 当前时间
     */
    private String nowDate = LocalDate.now().toString();

    /**
     * 分摊标记
     */
    private String flag;
    /**
     * 竣工验收取消按钮标记
     */
    private boolean finishCancel;
    /**
     * 竣工验收取消按钮置灰的提示信息
     */
    private String message;
    /**
     * 质保金余额
     */
    private BigDecimal retentionBalance;
    /**
     * 是否存在质保金
     */
    private String isLastMsg;
    /**
     * 勘察记录数量
     */
    private Integer surveyNum;
    /**
     * 未上传图片数量
     */
    private Integer unUploadNum;
    /**
     * 质保金到期是否返回状态（0未到质保期，1到质保期并且已经返回，2到质保期未返回）
     */
    private int lastFlag;
    /**
     * 申报按钮标记
     */
    private Boolean declareFlag;
    /**
     * 申报按钮置灰提示信息
     */
    private String declareMessage;
    /**
     * 类型（1物业企业；2业委会居委会；3个人）
     * 用于填写申请表时，查询申请人
     */
    private String orgType;
    /**
     * 项目类别（1：正常项目，2：紧急项目）
     */
    private String projectType;
    /**
     * 企业类型（1维修企业，2审计企业，3监理企业）
     */
    private String type;
    /**
     * 登录账号
     */
    private String operNo;
    private String opinion;
    /**
     * 应急申报原因
     */
    private String reasonType;
    /**
     * 其他原因时使用
     */
    private String otherReason;
    /**
     * 审核类型
     */
    private String flowType;
    /**
     * 工程预算
     */
    private BigDecimal budgetAmount;
    /**
     * 鉴定监理造价
     */
    private BigDecimal supervisionCost = BigDecimal.ZERO;
    /**
     * 图档信息
     */
    private List<FileVO> fileTypeList;
}